local P = ClassFromFile(...)



function P:Create(fromObj)
	local retObj = nil
	if self.obj_list and #self.obj_list > 0 then
		retObj = self.obj_list[#self.obj_list]
		table.remove(self.obj_list)

		if self.Clear then
			self:Clear(retObj)
		end
	else
		retObj = self:New()
	end

	if fromObj then
		self:Copy(retObj, fromObj)
	end

	return retObj
end

function P:Recycle(t)
	if not t then
		return
	end

	-- if self.obj_list == nil then
	-- 	self.obj_list = {}
	-- end

	-- table.insert(self.obj_list, t)
end

function P:GetSize()
	if not self.obj_list then
		return 0
	end

	return #self.obj_list
end